#pragma once

#ifdef _MSC_VER

#define _CRTDBG_MAP_ALLOC
#include <crtdbg.h>

#endif/*_MSC_VER*/

#include "kconfig.h"

#ifdef _FULLPROGRAM

#include "ksymtbl.h"
#include "klbltbl.h"
#include "kstrpool.h"
#include "kbytecode.h"

extern SymbolTable symtbl; 
extern LabelTable lbltbl;
extern k_uint programSize;
extern k_uint line;

extern std::map<k_string, k_uint> symbols;

extern ByteCodeStream bytecode;

extern StringPool strPool;
extern k_uint strPoolSize;

extern bool hasDebugInfo;

#endif //_FULLPROGRAM
